Accelerating Meta Data Checks for Software Correctness and Security

نویسندگان

  • Weihaw Chuang
  • Satish Narayanasamy
  • Brad Calder
چکیده

As high GHZ processors become prevalent, adding hardware support to ensure the correctness and security of programs will be just as important, for the average user, as further increases in processor performance. The goal of our research is to focus on developing compiler and hardware support for efficiently performing software checks that can be left on all of the time, even in production code releases, to provide a significant increase in the correctness and security of software. In this paper we focus on the performance of checking the correctness of pointers. We focus on pointers since a significant amount of bugs and security issues (buffer overflows) in programs are due to memory bugs resulting from incorrect usage of pointers. To determine if a pointer reference is correct many techniques require additional information to be kept track of called meta-data. The meta-data is checked when a pointer is dereferenced to verify some property about the pointer or the object. The first part of our paper focuses on where to efficiently keep track of this meta-data information and the overheads for performing safety checks like bounds checking and dangling pointer checks. We then focus on architecture extensions to reduce the overhead of these meta-data checks. We examine these optimizations in the presence of two meta-data checking applications – bounds checking and dangling pointer checks and show that we can reduce the overhead of these pointer checks from 148% down to 21% on average.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Trust Based Probabilistic Method for Efficient Correctness Verification in Database Outsourcing

Correctness verification of query results is a significant challenge in database outsourcing. Most of the proposed approaches impose high overhead, which makes them impractical in real scenarios. Probabilistic approaches are proposed in order to reduce the computation overhead pertaining to the verification process. In this paper, we use the notion of trust as the basis of our probabilistic app...

متن کامل

There is Something Fishy About Your Evidence ... or How to Develop Inconsistency Checks for Digital Evidence Using the B Method

Inconsistencies in various data structures, such as missing log records and modified operating system files, have long been used by intrusion investigators and forensic analysts as indicators of suspicious activity. This paper describes a rigorous methodology for developing such inconsistency checks and verifying their correctness. It is based on the use of the B Method – a formal method of sof...

متن کامل

A case study in applying ontologies to augment and reason about the correctness of specifications

In this paper we investigate how software specifications can benefit from the presence of formal ontologies to augment and enrich their context. This makes it possible to verify the correctness of the specification with respect to formally represented domain knowledge. We present a meta-interpretation technique that allows us to perform checks for conceptual error occurrences in specifications....

متن کامل

Software Security Test Data Generation Based on Genetic Algorithms

Software security is an important quality. The software security testing is one of the most important kinds of the software testing. How to test the software security, and especially to automatically generate security test cases are major problems. An improved method of the test data generation based on Genetic Algorithm is put forwarded. A software security test algorithm is developed. The alg...

متن کامل

Information Flow Security for Asynchronous, Distributed, and Mobile Applications. (Sécurité par contrôle de flux d'applications asynchrones, distribuées et mobiles)

The objective for this work is to propose a security solution to regulate information flows, specifically through an access and flow control mechanism, targeted to distributed applications using active objects with asynchronous communications. It includes a security policy and the mechanism that will enforce the rules present in such policies. Data confidentiality and secure information flows i...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • J. Instruction-Level Parallelism

دوره 9  شماره 

صفحات  -

تاریخ انتشار 2007